/* Editor Component Styles */

.editor {
  flex: 1;
  min-width: 0; /* 允许flex子项收缩 */
  height: 100%;
  background: var(--color-editor-bg);
  border-right: 1px solid var(--color-editor-border);
  position: relative; /* 为CodeMirror提供定位上下文 */
  overflow: hidden; /* 让内部的CodeMirror处理滚动 */
}

/* 确保CodeMirror编辑器正确渲染 */
.editor :global(.cm-editor) {
  height: 100%;
  font-family: var(--font-family-mono);
  font-size: 14px;
  line-height: 1.5;
  background: var(--color-editor-bg);
  color: var(--color-text-primary);
}

.editor :global(.cm-content) {
  padding: var(--spacing-md);
  min-height: 100%;
}

.editor :global(.cm-focused) {
  outline: none;
}

/* 错误高亮样式已移至 text-editor 主题系统中 */

.editor :global(.cm-scroller)::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

.editor :global(.cm-scroller)::-webkit-scrollbar-track {
  background: var(--color-bg-secondary);
  border-radius: var(--border-radius-sm);
}

.editor :global(.cm-scroller)::-webkit-scrollbar-thumb {
  background: var(--color-border-secondary);
  border-radius: var(--border-radius-sm);
  border: 2px solid var(--color-bg-secondary);
}

.editor :global(.cm-scroller)::-webkit-scrollbar-thumb:hover {
  background: var(--color-text-tertiary);
}

/* 加载状态 */
.loadingContainer {
  padding: var(--spacing-xl);
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  background: var(--color-editor-bg);
}

.loadingContent {
  text-align: center;
  color: var(--color-text-tertiary);
  font-family: var(--font-family-mono);
  font-size: 14px;
}

.loadingMessage {
  margin-bottom: var(--spacing-sm);
}

.loadingSubtext {
  font-size: 12px;
  opacity: 0.7;
}

/* 响应式设计 */
@media (max-width: 768px) {
  .editor :global(.cm-editor) {
    font-size: 13px;
  }
  
  .editor :global(.cm-content) {
    padding: var(--spacing-sm);
  }
}

@media (max-width: 480px) {
  .editor :global(.cm-editor) {
    font-size: 12px;
    line-height: 1.4;
  }
  
  .editor :global(.cm-content) {
    padding: var(--spacing-xs);
  }
  
  .loadingContainer {
    padding: var(--spacing-md);
  }
  
  .loadingContent {
    font-size: 12px;
  }
  
  .loadingSubtext {
    font-size: 10px;
  }
}
